package com.base.self.entity;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

/**
 * <p>
 * 商品订单
 * </p>
 *
 * @author XiFYuW
 * @since 2020-11-18
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="SelfOrder对象", description="商品订单")
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class SelfOrder implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "id")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "订单号")
    private String orderNo;

    @ApiModelProperty(value = "代理商id")
    private String parentId;

    @ApiModelProperty(value = "商家id")
    private String shopId;

    @ApiModelProperty(value = "用户id")
    private String userId;

    @ApiModelProperty(value = "用户手机号")
    private String mobile;

    @ApiModelProperty(value = "商品id")
    private Integer commodityId;

    @ApiModelProperty(value = "商品分区 0: 奖励金区 1：积分")
    private Integer commoditySubarea;

    @ApiModelProperty(value = "实付价")
    private BigDecimal realPrice;

    @ApiModelProperty(value = "折扣价")
    private BigDecimal discountPrice;

    @ApiModelProperty(value = "数量")
    private Integer number;

    @ApiModelProperty(value = "1.待支付 2.待发货 3.待收货 4.待晒单 5.已取消 6.待拼团")
    private Integer status;

    @ApiModelProperty(value = "支付时间")
    private Date payTime;

    @ApiModelProperty(value = "1.支付宝 2.微信 3.云闪付 4.奖励金")
    private Integer payWay;

    @ApiModelProperty(value = "备注")
    private String remark;

    @ApiModelProperty(value = "收件人手机号")
    private String recipientsMobile;

    @ApiModelProperty(value = "收件人姓名")
    private String recipientsName;

    @ApiModelProperty(value = "收件人详细地址")
    private String recipientsAddress;

    @ApiModelProperty(value = "快递单号")
    private String expressOrder;

    @ApiModelProperty(value = "快递状态：0：未发货 1：已发货")
    private Integer expressStatus;

    @ApiModelProperty(value = "快递公司编号")
    private String expressNumber;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "更新时间")
    private Date updateTime;

    @ApiModelProperty(value = "0.未删除 1.已删除")
    private Integer isDel;

    @ApiModelProperty(value = "0.未置换 1.已置换")
    private Integer isReplacement;

    @ApiModelProperty(value = "拼团成功id")
    private Integer regimentalId;

    @ApiModelProperty(value = "拼团失败id")
    private Integer regimentalOutId;

    @ApiModelProperty(value = "第几件购买")
    private Integer orderNumber;

    @ApiModelProperty(value = "拼团成功时间")
    private Date successTime;

    @ApiModelProperty(value = "0.拼团订单 1.兑换订单")
    private Integer isPartaker;

    @ApiModelProperty(value = "产生话费订单时关联的商品订单")
    private Long carrierId;

    @ApiModelProperty(value = "团长id")
    private String regimental;

    @ApiModelProperty(value = "退款状态 0.未申请 1.已申请 2.已同意 3.拒绝")
    private Integer refundStatus;

    @ApiModelProperty(value = "兑换码")
    private String redeem;

    @ApiModelProperty("权益礼包id")
    private String callnum;
     @ApiModelProperty("拼团主订单号")
    private String parentOrderNo;
     @ApiModelProperty("拼团人数")
     private  Integer ptNum;

}
